The BLE specification (version 0.9) can be found from the Bluetooth Special Interest Group (BT SIG) at http://www.bluetooth.com/Bluetooth/SIG/.
The Bluetooth Low Energy (BLE) technology is aimed at devices requiring a low power consumption, for example devices that may operate with one or more button cell batteries such as sensors, key fobs, and/or the like. For the technology to take a place in the markets it is expected that such batteries should last for greater than one year, for example when a device operates in slave mode as defined in the BLE specification.
This BLE specification has some states and roles for devices as follows:                Advertising State                    Discoverable/Connectable/Broadcasting                        Scanning State                    Active or Passive Scanning                        Initiating State                    Initiates a Connection to an Advertiser                        Connected State                    Initiator becomes Master Role            Advertiser becomes Slave Role                        
For simplicity lets consider an example of a sensing device which can send data at a requested interval or without a dedicated request, for example in an advertising mode. The link between the master/collecting device and slave sensor providing the data may operate with a low duty cycle in order to extend the lifetime of such batteries. A low duty cycle may mean in this context collecting as but only one example data such as a temperature only once every second or even every many seconds.
An example BLE sensor device may be configured to wake up and communicate with a master/collecting device. In an example embodiment, a BLE sensor is configured to connect with the master/collecting device for a certain time period to indicate or convey some information, and sleep for the rest of the interval. When a slave or a master device is communicating, it takes a significant amount of power from the battery. When the slave or master device is sleeping, a smaller amount of power is consumed. The sleep interval may be timed using a sleep clock. Data may be sent in packets by the slave device and the master device. The current Bluetooth Low Energy specification Version 0.9 defines a packet structure as shown in FIG. 1. The packet structure is described in more detail below.
In an example embodiment, the packet comprises a preamble followed by an access address. The preamble is a fixed pattern of ‘01010101’ or ‘10101010’ depending on the first bit of the access address. If the first bit of the Access Address is ‘1’, the preamble is ‘10101010’; otherwise the preamble is ‘01010101’. Possible examples of message constructs can be seen in FIG. 1.
FIG. 1 shows an example message 1 of a master communicating with a slave device on a data channel. The master device may start the communication. The slave device receives the packet and may respond within a short time, for example 150 μs, after the end of the packet from the master. In order to receive the packet from the master, the slave device turns on the receiver. Due to timing inaccuracies at the transmitter and/or the receiver, the slave device may have to turn on the receiver at a time before the nominal receive time for the packet from the master. The time that the slave device turns on the receiver may be called receive window. In an example embodiment, the receive window comprises an additional wake up early duration added to the time for receiving the packet due to sleep clock inaccuracy.
Several options exist for the message structure content. For example referring once more to FIG. 1, the PDU field in the packet structure may consist of a 16-bit header and some (user) data. In another example of an empty data packet, the PDU field only consists of the 16-bit header as shown in Message 2 of FIG. 1. In a further example, such as a proximity use case, empty packets, for example as shown in Message 2 of FIG. 1, may be used to maintain the communication link, as shown in FIG. 1. The communicating devices send and receive 80 bits of the empty packet.
The 16-bit header may comprise:
Payload data Unit (PDU)
Cyclic redundancy Check (CRC)
Logical Link Identifier (LLID)
Next Expected Sequence (NESN)
Sequence number (SN)
More Data (MD)
Reserved for Future Use (RFU)